﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;

namespace Krile.Kernel.Bridges
{
    public interface IForm
    {
        /// <summary>
        /// Selected status
        /// </summary>
        Data.Status SelectedStatus { get; }

        /// <summary>
        /// Refresh timeline list
        /// </summary>
        /// <param name="remeasure">re-measuring timeline elements for update composition</param>
        void RefreshTL(bool remeasure);

        /// <summary>
        /// Refresh timeline list with weaker priority.
        /// </summary>
        void RefreshTLWeak(bool remeasure);

        /// <summary>
        /// Ensure visible selected status.
        /// </summary>
        void EnsureVisible();

        /// <summary>
        /// Set supposed cursor
        /// </summary>
        /// <param name="cursor">target cursor</param>
        void SetCursor(Cursor cursor);
    }
}
